/***************************************************************************
创建者：华磊
 开始时间：               : 2020.1１.２４
 copyright            : (C) 深圳市华友高科有限公司
 修改说明：（每次有修改就添加一条，带有 修改人，修改时间，修改描述）

 ***************************************************************************
 *   io窗口程序
*                                                                         *
 ***************************************************************************/
#ifndef GENERALSTATUS_H
#define GENERALSTATUS_H

#include <QWidget>
#include <QStandardItemModel>
#include <QHeaderView>


class SystemStatus;
namespace Ui {
class GeneralStatus;
}

/**
 * @brief The GeneralStatus class 通用界面类
 */
class GeneralStatus : public QWidget
{
    Q_OBJECT

public:
    /**
     * @brief powerOnTime       开机时间
     */
    QString powerOnTime;
    /**
     * @brief powerOnTime       累计开机时间
     */
    QString totalPowerOnTime;
    /**
     * @brief powerOnTime       第一次上电开机时间
     */
    QString totalStartOnTime;
    /**
     * @brief servoOnTime       电机使能时间
     */
    QString servoOnTime;
    /**
     * @brief robotStatus       机器人状态
     */
    QVector<int> robotStatus;
    /**
     * @brief robotProgram      机器人程序
     */
    QVector<QString> robotProgram;
    /**
     * @brief robotSpeed        机器人速度
     */
    QVector<int> robotSpeed;
    /**
     * @brief robotId       机器人ID
     */
    QVector<int> robotId;
    /**
     * @brief robotName     机器人名称
     */
    QVector<QString> robotName;

    SystemStatus *systemStatus;


public:
    explicit GeneralStatus(int styleId,QWidget *parent = 0);
    ~GeneralStatus();

    /**
    * @brief updateView 更新显示函数
    */
   void updateView();
   /**
    * @brief showGeneralStatusView 显示更新数据函数
    */
   void showGeneralStatusView();

   void changeLanguage();
   void setTableView();
   void initialDisplayStyle(int styleId);

signals:
   /**
    * @brief generalStatusSearch 更新数据信号
    */
   void generalStatusSearch();

private:
    QStandardItemModel  *model;
    QHeaderView *headerView;

public:
    bool initFlag;

    int tmpSize;

private:
    Ui::GeneralStatus *ui;
};

#endif // GENERALSTATUS_H
